﻿'''
题目描述
给定一个非空字符串S，其被N个‘-’分隔成N+1的子串，给定正整数K，要求除第一个子串外，其余的子串每K个字符组成新的子串，并
用‘-’分隔。
对于新组成的每一个子串，如果它含有的小写字母比大写字母多，则将这个子串的所有大写字母转换为小写字母；
反之，如果它含有的大写字母比小写字母多，则将这个子串的所有小写字母转换为大写字母；大小写字母的数量相等时，不做转换。
输入描述
输入为两行，第一行为参数K，第二行为字符串S。
输出描述
输出转换后的字符串。
示例1
输入
3
12abc-abCABc-4aB@
输出
12abc-abc-ABC-4aB-@
说明
子串为12abc、abCABc、4aB@，第一个子串保留，
后面的子串每3个字符一组为abC、ABc、4aB、@，
abC中小写字母较多，转换为abc，
ABc中大写字母较多，转换为ABC，
4aB中大小写字母都为1个，不做转换，
@中没有字母，连起来即12abc-abc-ABC-4aB-@
示例2
输入
12
12abc-abCABc-4aB@
输出
12abc-abCABc4aB@
说明
子串为12abc、abCABc、4aB@，第一个子串保留，
后面的子串每12个字符一组为abCABc4aB@，
这个子串中大小写字母都为4个，不做转换，
连起来即12abc-abCABc4aB@
解题思路
这个题目的目标是对字符串进行重新分组和大小写转换。题目的关键点和步骤如下：
字符串分组：
给定一个字符串 S，这个字符串用 '-' 分隔成了多个子串。假设有 N 个 '-'，那么 S 被分隔成 N+1 个子串。
给定一个正整数 K，要求除第一个子串外，其余的子串按照每 K 个字符重新分组。
大小写转换：
对于新分组后的每个子串，如果小写字母的数量比大写字母多，就将这个子串的所有大写字母转换为小写字母；
如果大写字母的数量比小写字母多，就将这个子串的所有小写字母转换为大写字母；
如果大小写字母数量相等，则保持不变。
输出要求：
第一个子串保持不变。
后面的子串根据重新分组和大小写转换后的结果，再次用 '-' 分隔，形成最终的输出字符串。
示例1解析：
输入：K=3，字符串为 12abc-abCABc-4aB@
初始子串分割结果：12abc、abCABc、4aB@
分组处理：
第一个子串 12abc 保持不变。
第二个子串 abCABc 按照每 3 个字符重新分组：abC、ABc。分别统计大小写字母数量，abC 中小写字母较多，因此将 abC 转换为
abc；ABc 中大写字母较多，因此将 ABc 转换为 ABC。
第三个子串 4aB@ 按照每 3 个字符重新分组：4aB、@。4aB 中大小写字母数量相等，因此保持不变。
最终输出：12abc-abc-ABC-4aB-@
示例2解析：
输入：K=12，字符串为 12abc-abCABc-4aB@
初始子串分割结果：12abc、abCABc、4aB@
分组处理：
第一个子串 12abc 保持不变。
第二个子串 abCABc 和 4aB@ 加起来不超过 12 个字符，所以它们合并为一个子串：abCABc4aB@，大小写字母数量相等，因此保持不变。
最终输出：12abc-abCABc4aB@
'''
#输入描述：输入为两行，第一行为参数K，第二行为字符串S。
#输出描述：输出转换后的字符串。
#示例：
'''
输入
3
12abc-abCABc-4aB@
输出
12abc-abc-ABC-4aB-@
'''
#读取并存储输入：
k = int(input())
s = input()
#以'-'分割
cut_s = list(s.split('-'))
#保留第一个子串不变
first_s = cut_s[0]
#将后续子串转换为单一子串
new_chars = ''  #用来存储新的子串,注意为字符串，非列表
for i in range(1,len(cut_s)):
    for j in range(len(cut_s[i])):
        new_chars += cut_s[i][j]
#以k个元素分割新子串，中间以'-'分割
new_sub_chars = ''  #存储新的子串
for i in range(len(new_chars)):
    #当达到k个元素，且后续还有字符,注意i从0开始，判断需+1
    if (i + 1) % k == 0 and (i + 1) != len(new_chars):
        new_sub_chars += new_chars[i] + '-'
    else:
        new_sub_chars += new_chars[i]
#再次以'-'分割子串，并判断每个子串大小写字母个数，并更新
case_upper_lower_chars = new_sub_chars.split('-')
output_result = []    #用来保存输出结果，首先加入首字符串
output_result.append(first_s)   #注意列表能append，字符串+ substr
#遍历子串,直接整个子串，不需要逐个字符
for sub_str in case_upper_lower_chars:
    #统计并比较大小写字母个数
    uppper_counts = sum(1 for sub in sub_str if sub.isupper())
    lower_counts = sum(1 for sub in sub_str if sub.islower())
    if uppper_counts > lower_counts:    #大写多
        output_result.append(sub_str.upper())
    elif uppper_counts < lower_counts:  #小写多
        output_result.append(sub_str.lower())
    else:   #相等
        output_result.append(sub_str)
#输出结果
print('-'.join(result for result in output_result))